home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
AmigActive 2
/
AACD 2.iso
/
AACD
/
Magazine
/
GraphicsCards
/
StormMesa
/
src
/
quads.s
< prev
next >
Wrap
Text File
|
1999-02-04
|
2KB
|
93 lines
; Storm C Compiler
; Work2:Mesa3/Mesa-3.0/src/quads.c
mc68030
mc68881
SECTION "_basic_quad:0",CODE
;static void basic_quad( GLcontext *ctx,
_basic_quad
movem.l d2-d5/a2,-(a7)
movem.l $1C(a7),d0/d2/d5
movem.l $28(a7),d3/d4
move.l $18(a7),a2
L7
; (*ctx->Driver.TriangleFunc)( ctx, v0, v1, v3, pv );
move.l d4,-(a7)
move.l d3,-(a7)
move.l d2,-(a7)
move.l d0,-(a7)
move.l a2,-(a7)
move.l $9A0(a2),a0
jsr (a0)
add.w #$14,a7
; (*ctx->Driver.TriangleFunc)( ctx, v1, v2, v3, pv );
move.l d4,-(a7)
move.l d3,-(a7)
move.l d5,-(a7)
move.l d2,-(a7)
move.l a2,-(a7)
move.l $9A0(a2),a0
jsr (a0)
add.w #$14,a7
movem.l (a7)+,d2-d5/a2
rts
SECTION "_null_quad:0",CODE
rts
;static void null_quad( GLcontext *ctx,
_null_quad
L8
; (void) ctx;
; (void) v0;
; (void) v1;
; (void) v2;
; (void) v3;
; (void) pv;
rts
SECTION "_gl_set_quad_function:0",CODE
;void gl_set_quad_function( GLcontext *ctx )
XDEF _gl_set_quad_function
_gl_set_quad_function
move.l 4(a7),a0
L9
; if (ctx->RenderMode==GL_RENDER)
move.l a0,a1
add.l #$E964,a1
move.l (a1),d0
cmp.l #$1C00,d0
bne.b L15
L10
; if (ctx->NoRaster)
move.l a0,a1
add.l #$E99C,a1
tst.b (a1)
beq.b L12
L11
; ctx->Driver.QuadFunc = null_quad;
move.l #_null_quad,$9A4(a0)
bra.b L14
L12
; else if (ctx->Driver.QuadFunc)
tst.l $9A4(a0)
bne.b L14
L13
; ctx->Driver.QuadFunc = basic_quad;
move.l #_basic_quad,$9A4(a0)
L14
bra.b L16
L15
; ctx->Driver.QuadFunc = basic_quad;
move.l #_basic_quad,$9A4(a0)
L16
rts
END